package com.ruoyi.xiaoshou.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 销售退货申请对象 finer_sale_back_request
 *
 * @author lmj
 * @date 2024-10-25
 */
@Data
public class SaleBackRequest extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 退货申请单id
     */
    private Integer id;

    /**
     * 退货申请单编号
     */
    @Excel(name = "退货申请单编号")
    private String saleBackRequestCode;

    /**
     * 销售出库单编号
     */
    @Excel(name = "销售出库单编号")
    private String saleOutCode;

    /**
     * 总价
     */
    @Excel(name = "总价")
    private BigDecimal total;

    /**
     * 审核人
     */
    @Excel(name = "审核人")
    private String userId;

    /**
     * 审核状态（0:等待审核 1:审核完成）
     */
    @Excel(name = "审核状态", readConverterExp = "0=:等待审核,1=:审核完成")
    private Integer status;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /**
     * 是否删除(0:未删除 1:删除)
     */
    private Integer isDel;
    @Excel(name = "总数量")
    private Integer totalNum;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "生效时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date passDate;
    @Excel(name = "客户id")
    private Integer cusId;
    @Excel(name = "客户名称")
    private String cusName;
    @Excel(name = "关闭状态", readConverterExp = "0=:未关闭,1=:已关闭")
    private Integer isClose;
    @Excel(name = "关闭状态", readConverterExp = "0=:未关闭,1=:已关闭")
    private Integer isCancel;



    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("saleBackRequestCode", getSaleBackRequestCode())
                .append("saleOutCode", getSaleOutCode())
                .append("total", getTotal())
                .append("userId", getUserId())
                .append("status", getStatus())
                .append("createBy", getCreateBy())
                .append("createDate", getCreateDate())
                .append("updateBy", getUpdateBy())
                .append("updateDate", getUpdateDate())
                .append("isDel", getIsDel())
                .toString();
    }
}
